package org.jsola.hr.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.jsola.core.vo.BaseVO;

import java.util.Date;

import static org.jsola.core.example.BaseExample.E_GMT_CREATE;
import static org.jsola.core.example.BaseExample.E_GMT_MODIFIED;
import static org.jsola.core.example.BaseExample.E_ID;
import static org.jsola.core.example.BaseExample.N_GMT_CREATE;
import static org.jsola.core.example.BaseExample.N_GMT_MODIFIED;
import static org.jsola.core.example.BaseExample.N_ID;
import static org.jsola.hr.example.RegistrationRecordExample.E_PARENT_SUBJECT_ID;
import static org.jsola.hr.example.RegistrationRecordExample.E_PARENT_SUBJECT_TYPE;
import static org.jsola.hr.example.RegistrationRecordExample.E_SUBJECT_ID;
import static org.jsola.hr.example.RegistrationRecordExample.E_SUBJECT_TYPE;
import static org.jsola.hr.example.RegistrationRecordExample.N_PARENT_SUBJECT_ID;
import static org.jsola.hr.example.RegistrationRecordExample.N_PARENT_SUBJECT_TYPE;
import static org.jsola.hr.example.RegistrationRecordExample.N_SUBJECT_ID;
import static org.jsola.hr.example.RegistrationRecordExample.N_SUBJECT_TYPE;

/**
 * 登录记录
 *
 * @author zhr
 */
@EqualsAndHashCode(callSuper = true)
@ApiModel(description = "【登录记录】详情展示对象")
@Data
public class RegistrationRecordVO extends BaseVO {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(notes = N_ID, example = E_ID)
    private String id;

    @ApiModelProperty(notes = N_SUBJECT_ID, example = E_SUBJECT_ID)
    private String subjectId;

    @ApiModelProperty(notes = N_PARENT_SUBJECT_ID, example = E_PARENT_SUBJECT_ID)
    private String parentSubjectId;

    @ApiModelProperty(notes = N_SUBJECT_TYPE, example = E_SUBJECT_TYPE)
    private String subjectType;

    @ApiModelProperty(notes = N_PARENT_SUBJECT_TYPE, example = E_PARENT_SUBJECT_TYPE)
    private String parentSubjectType;

    @ApiModelProperty(notes = N_GMT_CREATE, example = E_GMT_CREATE)
    private Date gmtCreate;

    @ApiModelProperty(notes = N_GMT_MODIFIED, example = E_GMT_MODIFIED)
    private Date gmtModified;

    @ApiModelProperty(notes = "名称")
    private String companyName;

    @ApiModelProperty(notes = "用户名称")
    private String employeeName;

    @ApiModelProperty(notes = "是否为管理员")
    private Boolean isAdmin;

    @ApiModelProperty(notes = "管理员名称")
    private String adminName;

    @ApiModelProperty(notes = "渠道Id")
    private String channelId;

    @ApiModelProperty(notes = "手机号")
    private String phone;
}

